dofile("lib.lua")
dofile("webservice.lua")

--BASE_DADOS = "WEBSERVICE"
BASE_DADOS = "MEMORIA"
cont = 0
ordem_time1 = {}
ordem_time2 = {}
primeiro_jog_esq = ""
primeiro_jog_dir = ""

Jogador = {}

function cria_jogador(tim,num,no,chute,cart,pass,cruz,des,falt,gol,chute_c,chute_e,cart_a,cart_v,pass_c,pass_e,cruz_c,cruz_e,falt_c,falt_r,goll_p,goll_c)
	cont = cont + 1
	Jogador[cont] = {
	nome = no,
	numero = num,
	time = tim,
	chutes = chute,
	cartoes = cart,
	passes = pass,
	cruzamentos = cruz,
	desarmes = des,
	faltas = falt,
	gols = gol,
	chutes_c = chute_c,
	chutes_e = chute_e,
	cartao_a = cart_a,
	cartao_v = cart_v,
	passe_c = pass_c,
	passe_e = pass_e,
	cruzamento_c = cruz_c,
	cruzamento_e = cruz_e,
	falta_c = falt_c,
	falta_r = falt_r,
	gol_p = goll_p,
	gol_c = goll_c,
	}
	return Jogador[cont]
end

function carrega_jogadores()
    local fh = io.open("time1.txt","r")
    while true do
        local line = fh.read(fh)
        if not line then 
			break 
		end 
        local dados = split(line,",")
        if dados ~= nil then
            ordem_time1[#ordem_time1 + 1] = dados[1]
            cria_jogador("1",dados[1],dados[2],dados[3],dados[4],dados[5],dados[6],dados[7],dados[8],dados[9],dados[10],dados[11],dados[12],dados[13],dados[14],dados[15],dados[16],dados[17],dados[18],dados[19],dados[20],dados[21])
        end 
    end 
    local fh = io.open("time2.txt","r")
    while true do
        local line = fh.read(fh)
        if not line then 
			break 
		end 
        local dados = split(line,",")
        if dados ~= nil then
            ordem_time2[#ordem_time2 + 1] = dados[1]
            cria_jogador("2",dados[1],dados[2],dados[3],dados[4],dados[5],dados[6],dados[7],dados[8],dados[9],dados[10],dados[11],dados[12],dados[13],dados[14],dados[15],dados[16],dados[17],dados[18],dados[19],dados[20],dados[21])
        end 
    end 
end


function get_jogador_by_nome(time, nome)
	for i in range(cont) do
		if Jogador[i].nome == nome and Jogador[i].time == time then
			return Jogador[i]
		end
	end
	return nil
end

function get_jogador_by_numero(time, num)
	for i in range(cont) do
		if Jogador[i].numero == num and Jogador[i].time == time then
			return Jogador[i]
		end
	end
	return nil
end

function get_total_chutes(time)
	local chutes = 0
	
	if (BASE_DADOS == "WEBSERVICE") then	
		if time == "1" then 
			return ws_get_total_cruzamentos() 
		end
	end

	for i in range(cont) do
		if Jogador[i].time == time then
			chutes = chutes + tonumber(Jogador[i].chutes)
		end
	end
	return tostring(chutes)
end

function get_total_cruzamentos(time)
	local cruzamentos = 0
	
	if (BASE_DADOS == "WEBSERVICE") then	
		if time == "1" then 
			return ws_get_total_cruzamentos() 
		end
	end

	for i in range(cont) do
		if Jogador[i].time == time then
			cruzamentos = cruzamentos + tonumber(Jogador[i].cruzamentos)
		end
	end
	return tostring(cruzamentos)
end

function get_total_gols(time)
	local gols = 0
	
	if (BASE_DADOS == "WEBSERVICE") then	
		if time == "1" then 
			return ws_get_total_gols() 
		end
	end

	for i in range(cont) do
		if Jogador[i].time == time then
			gols = gols + tonumber(Jogador[i].gols)
		end
	end
	return tostring(gols)
end

function get_total_cartoes(time)
	local cartoes = 0
	
	if (BASE_DADOS == "WEBSERVICE") then	
		if time == "1" then 
			return ws_get_total_cartoes() 
		end
	end

	for i in range(cont) do
		if Jogador[i].time == time then
			cartoes = cartoes + tonumber(Jogador[i].cartoes)
		end
	end
	return tostring(cartoes)
end

function get_total_passes(time)
	local passes = 0

	if (BASE_DADOS == "WEBSERVICE") then	
		if time == "1" then 
			return ws_get_total_passes() 
		end
	end

	for i in range(cont) do
		if Jogador[i].time == time then
			passes = passes + tonumber(Jogador[i].passes)
		end
	end
	return tostring(passes)
end

function get_total_desarmes(time)
	local desarmes = 0
	
	if (BASE_DADOS == "WEBSERVICE") then	
		if time == "1" then 
			return ws_get_total_desarmes() 
		end
	end

	for i in range(cont) do
		if Jogador[i].time == time then
			desarmes = desarmes + tonumber(Jogador[i].desarmes)
		end
	end
	return tostring(desarmes)
end

function get_total_faltas(time)
	local faltas = 0
	
	if (BASE_DADOS == "WEBSERVICE") then	
		if time == "1" then 
			return ws_get_total_faltas() 
		end
	end

	for i in range(cont) do
		if Jogador[i].time == time then
			faltas = faltas + tonumber(Jogador[i].faltas)
		end
	end
	return tostring(faltas)
end

Funcoes = { chutes = get_total_chutes,
			cruzamentos = get_total_cruzamentos,
			gols = get_total_gols,
			cartoes = get_total_cartoes,
			passes = get_total_passes,
			desarmes = get_total_desarmes,
			faltas = get_total_faltas,}
